import java.util.List; // 导入List接口，用于表示列表集合

public interface PhoneBookManager { // 定义电话簿管理接口，interface关键字定义接口
    boolean addContact(Contact contact); // 添加联系人方法声明，接口中只有方法签名没有实现

    boolean deleteContact(String name); // 根据姓名删除联系人方法声明

    boolean deleteContact(String name, String phoneNumber); // 根据姓名和电话精确删除联系人，这是方法重载

    boolean updateContact(String oldName, Contact newContact); // 修改联系人信息方法声明

    List<Contact> findContactsByName(String name); // 根据姓名查找联系人，返回List集合

    Contact findContactByPhone(String phoneNumber); // 根据电话查找联系人，返回单个Contact对象

    List<Contact> getAllContacts(); // 获取所有联系人方法声明

    int getContactCount(); // 获取联系人数量方法声明，返回int类型

    void clearAllContacts(); // 清空所有联系人方法声明，void表示无返回值

    boolean saveToFile(); // 保存数据到文件方法声明

    boolean loadFromFile(); // 从文件加载数据方法声明

    boolean exportToTxt(String fileName); // 导出到txt文件方法声明

    boolean importFromTxt(String fileName, boolean append); // 从txt文件导入方法声明，append参数控制是追加还是替换
}